package com.hds.modules.sys.entity.base;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author guonan
 * @Description 会员升级记录
 */
@TableName("tb_membership_records")
public class SysMemberShipRecordsEntity {

    public static final Integer SUCCESS = 0; // 支付成功
    public static final Integer NOSUCCESS = 1; // 未支付成功
    public static final String suffix = "vip";

    @TableId
    private Integer id; // 主键id

    private Long uid; //用户id

    private Integer levelId; // 会员等级id

    private Integer status; // 订单状态[0-success, 1-未成功]

    private String orderNo; // 订单编号

    private String payAmount; // 应付金额

    private String realAmount; // 实付金额

    private Date createTime; // 订单创建日期

    private Date payTime; // 支付完成日期

    @TableField(exist = false)
    private SysMemberShipEntity sysMemberShip;

    public SysMemberShipEntity getSysMemberShip() {
        return sysMemberShip;
    }

    public void setSysMemberShip(SysMemberShipEntity sysMemberShip) {
        this.sysMemberShip = sysMemberShip;
    }

    @Override
    public String toString() {
        return "SysMemberShipRecordsEntity{" +
                "id=" + id +
                ", uid=" + uid +
                ", levelId=" + levelId +
                ", status=" + status +
                ", orderNo='" + orderNo + '\'' +
                ", payAmount='" + payAmount + '\'' +
                ", realAmount='" + realAmount + '\'' +
                ", payTime=" + payTime +
                '}';
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public Integer getLevelId() {
        return levelId;
    }

    public void setLevelId(Integer levelId) {
        this.levelId = levelId;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(String payAmount) {
        this.payAmount = payAmount;
    }

    public String getRealAmount() {
        return realAmount;
    }

    public void setRealAmount(String realAmount) {
        this.realAmount = realAmount;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
}
